#ifndef __AESECBSBOX192__
#define __AESECBSBOX192__

#include "../plainkeycipher.h"

// Test vectors from <http://csrc.nist.gov/groups/STM/cavp/documents/aes/KAT_AES.zip>
const std::vector <PlainKeyCipher> AES192_SBOX = {
    std::make_tuple("00000000000000000000000000000000", "e9f065d7c13573587f7875357dfbb16c53489f6a4bd0f7cd", "0956259c9cd5cfd0181cca53380cde06"),
    std::make_tuple("00000000000000000000000000000000", "15d20f6ebc7e649fd95b76b107e6daba967c8a9484797f29", "8e4e18424e591a3d5b6f0876f16f8594"),
    std::make_tuple("00000000000000000000000000000000", "a8a282ee31c03fae4f8e9b8930d5473c2ed695a347e88b7c", "93f3270cfc877ef17e106ce938979cb0"),
    std::make_tuple("00000000000000000000000000000000", "cd62376d5ebb414917f0c78f05266433dc9192a1ec943300", "7f6c25ff41858561bb62f36492e93c29"),
    std::make_tuple("00000000000000000000000000000000", "502a6ab36984af268bf423c7f509205207fc1552af4a91e5", "8e06556dcbb00b809a025047cff2a940"),
    std::make_tuple("00000000000000000000000000000000", "25a39dbfd8034f71a81f9ceb55026e4037f8f6aa30ab44ce", "3608c344868e94555d23a120f8a5502d"),
    std::make_tuple("00000000000000000000000000000000", "e08c15411774ec4a908b64eadc6ac4199c7cd453f3aaef53", "77da2021935b840b7f5dcc39132da9e5"),
    std::make_tuple("00000000000000000000000000000000", "3b375a1ff7e8d44409696e6326ec9dec86138e2ae010b980", "3b7c24f825e3bf9873c9f14d39a0e6f4"),
    std::make_tuple("00000000000000000000000000000000", "950bb9f22cc35be6fe79f52c320af93dec5bc9c0c2f9cd53", "64ebf95686b353508c90ecd8b6134316"),
    std::make_tuple("00000000000000000000000000000000", "7001c487cc3e572cfc92f4d0e697d982e8856fdcc957da40", "ff558c5d27210b7929b73fc708eb4cf1"),
    std::make_tuple("00000000000000000000000000000000", "f029ce61d4e5a405b41ead0a883cc6a737da2cf50a6c92ae", "a2c3b2a818075490a7b4c14380f02702"),
    std::make_tuple("00000000000000000000000000000000", "61257134a518a0d57d9d244d45f6498cbc32f2bafc522d79", "cfe4d74002696ccf7d87b14a2f9cafc9"),
    std::make_tuple("00000000000000000000000000000000", "b0ab0a6a818baef2d11fa33eac947284fb7d748cfb75e570", "d2eafd86f63b109b91f5dbb3a3fb7e13"),
    std::make_tuple("00000000000000000000000000000000", "ee053aa011c8b428cdcc3636313c54d6a03cac01c71579d6", "9b9fdd1c5975655f539998b306a324af"),
    std::make_tuple("00000000000000000000000000000000", "d2926527e0aa9f37b45e2ec2ade5853ef807576104c7ace3", "dd619e1cf204446112e0af2b9afa8f8c"),
    std::make_tuple("00000000000000000000000000000000", "982215f4e173dfa0fcffe5d3da41c4812c7bcc8ed3540f93", "d4f0aae13c8fe9339fbf9e69ed0ad74d"),
    std::make_tuple("00000000000000000000000000000000", "98c6b8e01e379fbd14e61af6af891596583565f2a27d59e9", "19c80ec4a6deb7e5ed1033dda933498f"),
    std::make_tuple("00000000000000000000000000000000", "b3ad5cea1dddc214ca969ac35f37dae1a9a9d1528f89bb35", "3cf5e1d21a17956d1dffad6a7c41c659"),
    std::make_tuple("00000000000000000000000000000000", "45899367c3132849763073c435a9288a766c8b9ec2308516", "69fd12e8505f8ded2fdcb197a121b362"),
    std::make_tuple("00000000000000000000000000000000", "ec250e04c3903f602647b85a401a1ae7ca2f02f67fa4253e", "8aa584e2cc4d17417a97cb9a28ba29c8"),
    std::make_tuple("00000000000000000000000000000000", "d077a03bd8a38973928ccafe4a9d2f455130bd0af5ae46a9", "abc786fb1edb504580c4d882ef29a0c7"),
    std::make_tuple("00000000000000000000000000000000", "d184c36cf0dddfec39e654195006022237871a47c33d3198", "2e19fb60a3e1de0166f483c97824a978"),
    std::make_tuple("00000000000000000000000000000000", "4c6994ffa9dcdc805b60c2c0095334c42d95a8fc0ca5b080", "7656709538dd5fec41e0ce6a0f8e207d"),
    std::make_tuple("00000000000000000000000000000000", "c88f5b00a4ef9a6840e2acaf33f00a3bdc4e25895303fa72", "a67cf333b314d411d3c0ae6e1cfcd8f5"),
};

#endif // __AESECBSBOX192__
